[1] 2
How to Measure Parents’ Developmental Foci: Domains and Methodologies
the University of Manchester
Saturday, the 31th of January, 2026
PhD in Education, The University of Manchester (2021–Present);
From belief to practice: Understanding teachers’ pedagogic choices in China’s mathematics education
MSc in Research Methods with Education (Distinction, 2020–2021);
The association between mathematics teachers’ exclusivity belief and pedagogic practice
MA in Mathematics and Pedagogy, The Education University of Hong Kong (2019–2020)
When you click the Render button a document will be generated that includes:
This is part of the Quarto documentation.
When you click the Render button a presentation will be generated that includes both content and the output of embedded code. You can embed code like this:
This is part of the Quarto documentation.
You can also add text marked as code!
Adding Latex style equations is straightforward. Here is Euler’s identity:
\[ \begin{equation} e^{i\pi} + 1 = 0 \end{equation} \]
And here is Shepherd’s lemma:
\[ \begin{equation} \frac{P_1 - P_2}{Q_1 - Q_2} > \frac{P_1 - P_3}{Q_1 - Q_3} \end{equation} \]
Adding images is easy, simply type , et voilà!
Source: Link
Source: Link
Hi!
Use . . . to separate content as an incremental slide!
starwars <- starwars |>
dplyr::mutate(name = ifelse(name %in% c("Jabba Desilijic Tiure", "Tarfful"),
name, ""))
g <- starwars |>
ggplot() +
geom_point(aes(x = height, y = mass, col = sex)) +
ggrepel::geom_text_repel(aes(x = height,
y = mass,
label = name),
max.overlaps = 100) +
labs(title = "Star Wars Example",
caption = "Star Wars Example Dataset",
col = "Sex") +
theme_dime()The theme also contains a DIME/World Bank color palette and a color generator to make graphs more uniform and easier to generate. dime_palette() yields a named vector with the HEX codes of the corresponding colors for an easy integration in {ggplot2} graphs.
Let’s create a few more plots using the great {palmerpenguins} dataset and illustrate Simpson’s Paradox. These examples are inspired by this great talk.
Another way of creating interactive visualizations within your presentations is to use Observable JS, a Java Script framework developed by the creators of D3.js. See the Quarto documentation for more details.
filtered = data.filter(function(penguin) {
return bill_length_min < penguin.bill_length_mm &&
islands.includes(penguin.island);
})
viewof bill_length_min = Inputs.range(
[32, 50],
{value: 35, step: 1, label: "Bill length (min):"}
)
viewof islands = Inputs.checkbox(
["Torgersen", "Biscoe", "Dream"],
{ value: ["Torgersen", "Biscoe"],
label: "Islands:"
}
)\[ \text{Bill Depth}_{i} = \alpha + \beta \times \text{Bill Length}_{i} + \epsilon_{i} \]
| (1) | |
|---|---|
| (Intercept) | 20.885 *** |
| (0.844) | |
| bill_length_mm | -0.085 *** |
| (0.019) | |
| N | 342 |
| R2 | 0.055 |
| logLik | -707.776 |
| AIC | 1421.552 |
| *** p < 0.001; ** p < 0.01; * p < 0.05. | |
\[ \text{Bill Depth}_{i, k} = \alpha_{k} + \beta_{k} \times \text{Bill Length}_{k, i} + \epsilon_{i} \\ \text{where } k = \text{Gentoo} \]
| (1) | |
|---|---|
| (Intercept) | 5.251 *** |
| (1.055) | |
| bill_length_mm | 0.205 *** |
| (0.022) | |
| N | 123 |
| R2 | 0.414 |
| logLik | -138.834 |
| AIC | 283.667 |
| *** p < 0.001; ** p < 0.01; * p < 0.05. | |
knitr::kable()| species | n | mean_heigth | mean_mass |
|---|---|---|---|
| Human | 35 | 178 | 81 |
| Droid | 6 | 131 | 70 |
| Gungan | 3 | 209 | 74 |
| Kaminoan | 2 | 221 | 88 |
| Mirialan | 2 | 168 | 53 |
| Twi’lek | 2 | 179 | 55 |
| Wookiee | 2 | 231 | 124 |
| Zabrak | 2 | 173 | 80 |
DT::datatable()With the smaller class in the slide! Ex: ## slide name {.smaller}
gt::gt()| species | n | mean_heigth | mean_mass |
|---|---|---|---|
| Human | 35 | 178 | 81 |
| Droid | 6 | 131 | 70 |
| Gungan | 3 | 209 | 74 |
| Kaminoan | 2 | 221 | 88 |
| Mirialan | 2 | 168 | 53 |
| Twi'lek | 2 | 179 | 55 |
| Wookiee | 2 | 231 | 124 |
| Zabrak | 2 | 173 | 80 |
reactable::reactable()g, \(n=100\)) | Namibia (n, \(n=100\)).n (Namibia) Specifics:
a) -0.5; Relatedness (r) +0.5.g (Germany) Specifics:a) +0.5; Relatedness (r) -0.5.brms| ID | comm | Domain | item | resp | dim_a | dim_r |
|---|---|---|---|---|---|---|
| 6 | G | L | La5 | 1 | 1 | 0 |
| 96 | G | L | La3 | 3 | 1 | 0 |
| 99 | G | L | La1 | 1 | 1 | 0 |
| 137 | N | P | Pa3 | 3 | 1 | 0 |
| 159 | N | S | Sr3 | 3 | 0 | 1 |
| 160 | N | P | Pa4 | 2 | 1 | 0 |
fit <- brm(
formula = resp ~ 1 + comm + (0 + dim_a + dim_r | ID) + (1 | item),
data = simdata,
family = brmsfamily("acat", "logit"),
prior = c(
prior(normal(0, 3), class = "b"),
prior(normal(0, 1), class = "sd"),
prior(lkj(2), class = "cor")
),
backend = "cmdstanr", chains = 4, iter = 2000, warmup = 1000, cores = 4,
file = "models/fit_rsm"
) Family: acat
Links: mu = logit; disc = identity
Formula: resp ~ 1 + comm + (0 + dim_a + dim_r | ID) + (1 | item)
Data: simdata (Number of observations: 6000)
Draws: 4 chains, each with iter = 2000; warmup = 1000; thin = 1;
total post-warmup draws = 4000
Multilevel Hyperparameters:
~ID (Number of levels: 200)
Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
sd(dim_a) 0.69 0.05 0.60 0.80 1.00 1426 2412
sd(dim_r) 0.68 0.05 0.58 0.79 1.00 1120 2257
cor(dim_a,dim_r) -0.29 0.08 -0.43 -0.13 1.00 876 1712
~item (Number of levels: 30)
Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
sd(Intercept) 0.72 0.10 0.55 0.93 1.01 791 1646
Regression Coefficients:
Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
Intercept[1] -0.91 0.15 -1.20 -0.61 1.01 347 590
Intercept[2] 0.07 0.15 -0.22 0.35 1.01 318 453
Intercept[3] 1.11 0.15 0.81 1.39 1.01 322 425
commN 0.60 0.08 0.44 0.77 1.00 1137 1867
Further Distributional Parameters:
Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
disc 1.00 0.00 1.00 1.00 NA NA NA
Draws were sampled using sample(hmc). For each parameter, Bulk_ESS
and Tail_ESS are effective sample size measures, and Rhat is the potential
scale reduction factor on split chains (at convergence, Rhat = 1).
fit_sep <- brm(
formula = resp ~ 1 + comm + (0 + Domain:dim_a + Domain:dim_r | ID) + (1 | item),
data = simdata,
family = brmsfamily("acat", "logit"),
prior = c(
prior(normal(0, 1), class = "sd"),
prior(lkj(2), class = "cor")
),
chains = 4, iter = 2000, warmup = 1000, cores = 4, backend = "cmdstanr",
file = "models/fit_sep_dim"
) Family: acat
Links: mu = logit; disc = identity
Formula: resp ~ 1 + comm + (0 + Domain:dim_a + Domain:dim_r | ID) + (1 | item)
Data: simdata (Number of observations: 6000)
Draws: 4 chains, each with iter = 2000; warmup = 1000; thin = 1;
total post-warmup draws = 4000
Multilevel Hyperparameters:
~ID (Number of levels: 200)
Estimate Est.Error l-95% CI u-95% CI Rhat
sd(DomainL:dim_a) 0.86 0.07 0.72 1.02 1.00
sd(DomainP:dim_a) 0.97 0.07 0.83 1.13 1.00
sd(DomainS:dim_a) 0.97 0.08 0.83 1.13 1.00
sd(DomainL:dim_r) 0.91 0.08 0.76 1.07 1.00
sd(DomainP:dim_r) 1.08 0.08 0.92 1.25 1.00
sd(DomainS:dim_r) 0.86 0.08 0.72 1.02 1.00
cor(DomainL:dim_a,DomainP:dim_a) 0.65 0.07 0.51 0.78 1.00
cor(DomainL:dim_a,DomainS:dim_a) 0.57 0.08 0.41 0.71 1.00
cor(DomainP:dim_a,DomainS:dim_a) 0.47 0.08 0.29 0.62 1.01
cor(DomainL:dim_a,DomainL:dim_r) -0.21 0.09 -0.39 -0.03 1.00
cor(DomainP:dim_a,DomainL:dim_r) -0.11 0.09 -0.29 0.08 1.01
cor(DomainS:dim_a,DomainL:dim_r) 0.06 0.10 -0.13 0.24 1.00
cor(DomainL:dim_a,DomainP:dim_r) -0.11 0.10 -0.30 0.08 1.00
cor(DomainP:dim_a,DomainP:dim_r) -0.61 0.07 -0.73 -0.46 1.00
cor(DomainS:dim_a,DomainP:dim_r) 0.03 0.09 -0.15 0.21 1.00
cor(DomainL:dim_r,DomainP:dim_r) 0.53 0.08 0.37 0.68 1.00
cor(DomainL:dim_a,DomainS:dim_r) -0.10 0.10 -0.29 0.10 1.00
cor(DomainP:dim_a,DomainS:dim_r) -0.10 0.10 -0.29 0.09 1.00
cor(DomainS:dim_a,DomainS:dim_r) -0.47 0.08 -0.62 -0.31 1.00
cor(DomainL:dim_r,DomainS:dim_r) 0.62 0.08 0.46 0.75 1.00
cor(DomainP:dim_r,DomainS:dim_r) 0.35 0.09 0.17 0.52 1.00
Bulk_ESS Tail_ESS
sd(DomainL:dim_a) 1637 2807
sd(DomainP:dim_a) 1513 2588
sd(DomainS:dim_a) 1841 2533
sd(DomainL:dim_r) 1992 2607
sd(DomainP:dim_r) 1734 2899
sd(DomainS:dim_r) 1626 2820
cor(DomainL:dim_a,DomainP:dim_a) 785 1539
cor(DomainL:dim_a,DomainS:dim_a) 898 1864
cor(DomainP:dim_a,DomainS:dim_a) 996 1846
cor(DomainL:dim_a,DomainL:dim_r) 749 1665
cor(DomainP:dim_a,DomainL:dim_r) 789 1749
cor(DomainS:dim_a,DomainL:dim_r) 1066 2013
cor(DomainL:dim_a,DomainP:dim_r) 796 1577
cor(DomainP:dim_a,DomainP:dim_r) 1353 2254
cor(DomainS:dim_a,DomainP:dim_r) 1541 2504
cor(DomainL:dim_r,DomainP:dim_r) 1857 3098
cor(DomainL:dim_a,DomainS:dim_r) 825 1572
cor(DomainP:dim_a,DomainS:dim_r) 951 1993
cor(DomainS:dim_a,DomainS:dim_r) 1166 2379
cor(DomainL:dim_r,DomainS:dim_r) 1996 2733
cor(DomainP:dim_r,DomainS:dim_r) 2076 2828
~item (Number of levels: 30)
Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
sd(Intercept) 0.83 0.12 0.63 1.11 1.00 641 1242
Regression Coefficients:
Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
Intercept[1] -1.13 0.17 -1.48 -0.81 1.01 331 682
Intercept[2] 0.06 0.16 -0.28 0.38 1.01 314 708
Intercept[3] 1.35 0.17 1.00 1.66 1.01 346 724
commN 0.70 0.09 0.52 0.87 1.00 989 1790
Further Distributional Parameters:
Estimate Est.Error l-95% CI u-95% CI Rhat Bulk_ESS Tail_ESS
disc 1.00 0.00 1.00 1.00 NA NA NA
Draws were sampled using sample(hmc). For each parameter, Bulk_ESS
and Tail_ESS are effective sample size measures, and Rhat is the potential
scale reduction factor on split chains (at convergence, Rhat = 1).